<!-- HTML header for doxygen 1.8.9.1-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.6"/>
<title>ROSS: core/rio/io-serialize.c Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <a href="https://github.com/ROSS-org/ROSS">
   <div id="projectname">ROSS
   </div>
   </a>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.6 -->
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>Globals</span></a></li>
    </ul>
  </div>
<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="dir_af18cf245e3394ab3b436135935cfd6e.html">core</a></li><li class="navelem"><a class="el" href="dir_dc8f8817e169298f65c28e2aa6f1f7dc.html">rio</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="headertitle">
<div class="title">io-serialize.c</div>  </div>
</div><!--header-->
<div class="contents">
<a href="io-serialize_8c.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ross_8h.html">ross.h</a>&quot;</span></div>
<div class="line"><a name="l00002"></a><span class="lineno">    2</span>&#160;</div>
<div class="line"><a name="l00003"></a><span class="lineno"><a class="line" href="io_8h.html#a27e42f409054b5666545c7e642767fdb">    3</a></span>&#160;<span class="keywordtype">size_t</span> <a class="code" href="io-serialize_8c.html#a27e42f409054b5666545c7e642767fdb">io_lp_serialize</a> (<a class="code" href="structtw__lp.html">tw_lp</a> *lp, <span class="keywordtype">void</span> *buffer) {</div>
<div class="line"><a name="l00004"></a><span class="lineno">    4</span>&#160;    <span class="keywordtype">int</span> i, j;</div>
<div class="line"><a name="l00005"></a><span class="lineno">    5</span>&#160;</div>
<div class="line"><a name="l00006"></a><span class="lineno">    6</span>&#160;    <a class="code" href="structio__lp__store.html">io_lp_store</a> tmp;</div>
<div class="line"><a name="l00007"></a><span class="lineno">    7</span>&#160;</div>
<div class="line"><a name="l00008"></a><span class="lineno">    8</span>&#160;    tmp.<a class="code" href="structio__lp__store.html#a8c1686b67311778dd722afba7506a927">gid</a> = lp-&gt;<a class="code" href="structtw__lp.html#a3e75d9bf7796c16870ad686564ee4c20">gid</a>;</div>
<div class="line"><a name="l00009"></a><span class="lineno">    9</span>&#160;    <span class="keywordflow">for</span> (i = 0; i &lt; <a class="code" href="ross-extern_8h.html#a99999f4e30648f5007c61723c95a2d0e">g_tw_nRNG_per_lp</a>; i++) {</div>
<div class="line"><a name="l00010"></a><span class="lineno">   10</span>&#160;        <span class="keywordflow">for</span> (j = 0; j &lt; 4; j++) {</div>
<div class="line"><a name="l00011"></a><span class="lineno">   11</span>&#160;            tmp.<a class="code" href="structio__lp__store.html#adf8f997fef6e14cb521c759e48273b4c">rng</a>[j] = lp-&gt;<a class="code" href="structtw__lp.html#af7e48c8a55f5fff35746ac044df1902f">rng</a>-&gt;<a class="code" href="structtw__rng__stream.html#aa90b1f32cf686365db9070d700ca0a38">Ig</a>[j];</div>
<div class="line"><a name="l00012"></a><span class="lineno">   12</span>&#160;            tmp.<a class="code" href="structio__lp__store.html#adf8f997fef6e14cb521c759e48273b4c">rng</a>[j+4] = lp-&gt;<a class="code" href="structtw__lp.html#af7e48c8a55f5fff35746ac044df1902f">rng</a>-&gt;<a class="code" href="structtw__rng__stream.html#a61563015a585f69852a131cb62a4a5b1">Lg</a>[j];</div>
<div class="line"><a name="l00013"></a><span class="lineno">   13</span>&#160;            tmp.<a class="code" href="structio__lp__store.html#adf8f997fef6e14cb521c759e48273b4c">rng</a>[j+8] = lp-&gt;<a class="code" href="structtw__lp.html#af7e48c8a55f5fff35746ac044df1902f">rng</a>-&gt;<a class="code" href="structtw__rng__stream.html#ae50417100717d3cd46dacb1d7a01e6bf">Cg</a>[j];</div>
<div class="line"><a name="l00014"></a><span class="lineno">   14</span>&#160;        }</div>
<div class="line"><a name="l00015"></a><span class="lineno">   15</span>&#160;<span class="preprocessor">#ifdef RAND_NORMAL</span></div>
<div class="line"><a name="l00016"></a><span class="lineno">   16</span>&#160;<span class="preprocessor"></span>        tmp.<a class="code" href="structio__lp__store.html#a9c0895bc7c4d7cf19ebb636959fe8763">tw_normal_u1</a> = lp-&gt;<a class="code" href="structtw__lp.html#af7e48c8a55f5fff35746ac044df1902f">rng</a>-&gt;<a class="code" href="structtw__rng__stream.html#a5dca142f13f2c619e95177afc96cfe11">tw_normal_u1</a>;</div>
<div class="line"><a name="l00017"></a><span class="lineno">   17</span>&#160;        tmp.<a class="code" href="structio__lp__store.html#af89f11d3fb0bb873266412a837715fed">tw_normal_u2</a> = lp-&gt;<a class="code" href="structtw__lp.html#af7e48c8a55f5fff35746ac044df1902f">rng</a>-&gt;<a class="code" href="structtw__rng__stream.html#ae93b3e29cd7017deb81070094655b760">tw_normal_u2</a>;</div>
<div class="line"><a name="l00018"></a><span class="lineno">   18</span>&#160;        tmp.<a class="code" href="structio__lp__store.html#a3014ce4e0a76a2cc18f6df88b1973217">tw_normal_flipflop</a> = lp-&gt;<a class="code" href="structtw__lp.html#af7e48c8a55f5fff35746ac044df1902f">rng</a>-&gt;<a class="code" href="structtw__rng__stream.html#ae73176e60a69e3623e58f99ce561e821">tw_normal_flipflop</a>;</div>
<div class="line"><a name="l00019"></a><span class="lineno">   19</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00020"></a><span class="lineno">   20</span>&#160;<span class="preprocessor"></span>    }</div>
<div class="line"><a name="l00021"></a><span class="lineno">   21</span>&#160;    tmp.<a class="code" href="structio__lp__store.html#a25bf6226bc964d3369eff2d14dd3bff2">critical_path</a> = lp-&gt;<a class="code" href="structtw__lp.html#ab625bb15608759dde614a877a992672b">critical_path</a>;</div>
<div class="line"><a name="l00022"></a><span class="lineno">   22</span>&#160;</div>
<div class="line"><a name="l00023"></a><span class="lineno">   23</span>&#160;    memcpy(buffer, &amp;tmp, <span class="keyword">sizeof</span>(<a class="code" href="structio__lp__store.html">io_lp_store</a>));</div>
<div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;    <span class="keywordflow">return</span> <span class="keyword">sizeof</span>(<a class="code" href="structio__lp__store.html">io_lp_store</a>);</div>
<div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;}</div>
<div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;</div>
<div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="io_8h.html#a388e9a535bb45b57911f64cab9b65394">   27</a></span>&#160;<span class="keywordtype">size_t</span> <a class="code" href="io-serialize_8c.html#a388e9a535bb45b57911f64cab9b65394">io_lp_deserialize</a> (<a class="code" href="structtw__lp.html">tw_lp</a> *lp, <span class="keywordtype">void</span> *buffer) {</div>
<div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;    <span class="keywordtype">int</span> i, j;</div>
<div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;</div>
<div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;    <a class="code" href="structio__lp__store.html">io_lp_store</a> tmp;</div>
<div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;    memcpy(&amp;tmp, buffer, <span class="keyword">sizeof</span>(<a class="code" href="structio__lp__store.html">io_lp_store</a>));</div>
<div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;</div>
<div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;    lp-&gt;<a class="code" href="structtw__lp.html#a3e75d9bf7796c16870ad686564ee4c20">gid</a> = tmp.<a class="code" href="structio__lp__store.html#a8c1686b67311778dd722afba7506a927">gid</a>;</div>
<div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;</div>
<div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;    <span class="keywordflow">for</span> (i = 0; i &lt; <a class="code" href="ross-extern_8h.html#a99999f4e30648f5007c61723c95a2d0e">g_tw_nRNG_per_lp</a>; i++) {</div>
<div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;        <span class="keywordflow">for</span> (j = 0; j &lt; 4; j++) {</div>
<div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;            lp-&gt;<a class="code" href="structtw__lp.html#af7e48c8a55f5fff35746ac044df1902f">rng</a>-&gt;<a class="code" href="structtw__rng__stream.html#aa90b1f32cf686365db9070d700ca0a38">Ig</a>[j] = tmp.<a class="code" href="structio__lp__store.html#adf8f997fef6e14cb521c759e48273b4c">rng</a>[j];</div>
<div class="line"><a name="l00038"></a><span class="lineno">   38</span>&#160;            lp-&gt;<a class="code" href="structtw__lp.html#af7e48c8a55f5fff35746ac044df1902f">rng</a>-&gt;<a class="code" href="structtw__rng__stream.html#a61563015a585f69852a131cb62a4a5b1">Lg</a>[j] = tmp.<a class="code" href="structio__lp__store.html#adf8f997fef6e14cb521c759e48273b4c">rng</a>[j+4];</div>
<div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;            lp-&gt;<a class="code" href="structtw__lp.html#af7e48c8a55f5fff35746ac044df1902f">rng</a>-&gt;<a class="code" href="structtw__rng__stream.html#ae50417100717d3cd46dacb1d7a01e6bf">Cg</a>[j] = tmp.<a class="code" href="structio__lp__store.html#adf8f997fef6e14cb521c759e48273b4c">rng</a>[j+8];</div>
<div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;        }</div>
<div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;<span class="preprocessor">#ifdef RAND_NORMAL</span></div>
<div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;<span class="preprocessor"></span>        lp-&gt;<a class="code" href="structtw__lp.html#af7e48c8a55f5fff35746ac044df1902f">rng</a>-&gt;<a class="code" href="structtw__rng__stream.html#a5dca142f13f2c619e95177afc96cfe11">tw_normal_u1</a> = tmp.<a class="code" href="structio__lp__store.html#a9c0895bc7c4d7cf19ebb636959fe8763">tw_normal_u1</a>;</div>
<div class="line"><a name="l00043"></a><span class="lineno">   43</span>&#160;        lp-&gt;<a class="code" href="structtw__lp.html#af7e48c8a55f5fff35746ac044df1902f">rng</a>-&gt;<a class="code" href="structtw__rng__stream.html#ae93b3e29cd7017deb81070094655b760">tw_normal_u2</a> = tmp.<a class="code" href="structio__lp__store.html#af89f11d3fb0bb873266412a837715fed">tw_normal_u2</a>;</div>
<div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;        lp-&gt;<a class="code" href="structtw__lp.html#af7e48c8a55f5fff35746ac044df1902f">rng</a>-&gt;<a class="code" href="structtw__rng__stream.html#ae73176e60a69e3623e58f99ce561e821">tw_normal_flipflop</a> = tmp.<a class="code" href="structio__lp__store.html#a3014ce4e0a76a2cc18f6df88b1973217">tw_normal_flipflop</a>;</div>
<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;<span class="preprocessor"></span>    }</div>
<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;    lp-&gt;<a class="code" href="structtw__lp.html#ab625bb15608759dde614a877a992672b">critical_path</a> = tmp.<a class="code" href="structio__lp__store.html#a25bf6226bc964d3369eff2d14dd3bff2">critical_path</a>;</div>
<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;</div>
<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;    <span class="keywordflow">return</span> <span class="keyword">sizeof</span>(<a class="code" href="structio__lp__store.html">io_lp_store</a>);</div>
<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;}</div>
<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;</div>
<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="io_8h.html#af5bea0aaf250d135278dbe8910fbfdb0">   52</a></span>&#160;<span class="keywordtype">size_t</span> <a class="code" href="io-serialize_8c.html#af5bea0aaf250d135278dbe8910fbfdb0">io_event_serialize</a> (<a class="code" href="structtw__event.html">tw_event</a> *e, <span class="keywordtype">void</span> *buffer) {</div>
<div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;    <span class="keywordtype">int</span> i;</div>
<div class="line"><a name="l00054"></a><span class="lineno">   54</span>&#160;</div>
<div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;    <a class="code" href="structio__event__store.html">io_event_store</a> tmp;</div>
<div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;</div>
<div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;    memcpy(&amp;(tmp.<a class="code" href="structio__event__store.html#a47b2d062a53fd5fd82c289d618f483da">cv</a>), &amp;(e-&gt;<a class="code" href="structtw__event.html#ab29a363ffc4af436e28ea2e9c02d7856">cv</a>), <span class="keyword">sizeof</span>(<a class="code" href="structtw__bf.html">tw_bf</a>));</div>
<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    tmp.<a class="code" href="structio__event__store.html#a999fc90b6427868d0a8a8c371b5d2ec4">critical_path</a> = e-&gt;<a class="code" href="structtw__event.html#a5b1396b64aa4caf29bdc26f0930a250b">critical_path</a>;</div>
<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;    tmp.<a class="code" href="structio__event__store.html#a89e4d26b434072c70a14e13d36fe5087">dest_lp</a> = (<a class="code" href="ross_8h.html#a911515dff2fb79886a16ed44df5f9d20">tw_lpid</a>)e-&gt;<a class="code" href="structtw__event.html#afbd71fb6565dd9a4de0ad8e77e748c8a">dest_lp</a>; <span class="comment">// ROSS HACK: dest_lp is gid</span></div>
<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;    tmp.<a class="code" href="structio__event__store.html#a3c07f6614dba72581441300dce1722da">src_lp</a> = e-&gt;<a class="code" href="structtw__event.html#ad82747d6237b1b03ef68c923bef423a0">src_lp</a>-&gt;<a class="code" href="structtw__lp.html#a3e75d9bf7796c16870ad686564ee4c20">gid</a>;</div>
<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;    tmp.<a class="code" href="structio__event__store.html#ad7e7d60ee99c255712323a48ffc581b2">recv_ts</a> = e-&gt;<a class="code" href="structtw__event.html#a4e32bfdbde0d1cae06b5b3fb90adbffa">recv_ts</a> - <a class="code" href="ross-extern_8h.html#aedd6d883bb5b01f0d5c1121f48b0477e">g_tw_ts_end</a>;</div>
<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;</div>
<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    memcpy(buffer, &amp;tmp, <span class="keyword">sizeof</span>(<a class="code" href="structio__event__store.html">io_event_store</a>));</div>
<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;    <span class="comment">// printf(&quot;Storing event going to %lu at %f\n&quot;, tmp.dest_lp, tmp.recv_ts);</span></div>
<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;    <span class="keywordflow">return</span> <span class="keyword">sizeof</span>(<a class="code" href="structio__event__store.html">io_event_store</a>);</div>
<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;}</div>
<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;</div>
<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="io_8h.html#ad0792b7799ac27da02e522be00b25a62">   68</a></span>&#160;<span class="keywordtype">size_t</span> <a class="code" href="io-serialize_8c.html#ad0792b7799ac27da02e522be00b25a62">io_event_deserialize</a> (<a class="code" href="structtw__event.html">tw_event</a> *e, <span class="keywordtype">void</span> *buffer) {</div>
<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;    <span class="keywordtype">int</span> i;</div>
<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;</div>
<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;    <a class="code" href="structio__event__store.html">io_event_store</a> tmp;</div>
<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;    memcpy(&amp;tmp, buffer, <span class="keyword">sizeof</span>(<a class="code" href="structio__event__store.html">io_event_store</a>));</div>
<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;    e-&gt;<a class="code" href="structtw__event.html#a5b1396b64aa4caf29bdc26f0930a250b">critical_path</a> = tmp.<a class="code" href="structio__event__store.html#a999fc90b6427868d0a8a8c371b5d2ec4">critical_path</a>;</div>
<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;</div>
<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;    memcpy(&amp;(e-&gt;<a class="code" href="structtw__event.html#ab29a363ffc4af436e28ea2e9c02d7856">cv</a>), &amp;(tmp.<a class="code" href="structio__event__store.html#a47b2d062a53fd5fd82c289d618f483da">cv</a>), <span class="keyword">sizeof</span>(<a class="code" href="structtw__bf.html">tw_bf</a>));</div>
<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;    e-&gt;<a class="code" href="structtw__event.html#afbd71fb6565dd9a4de0ad8e77e748c8a">dest_lp</a> = (<a class="code" href="structtw__lp.html">tw_lp</a> *) tmp.<a class="code" href="structio__event__store.html#a89e4d26b434072c70a14e13d36fe5087">dest_lp</a>; <span class="comment">// ROSS HACK: e-&gt;dest_lp is GID for a bit</span></div>
<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;    <span class="comment">//undo pointer to GID conversion</span></div>
<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;    if (<a class="code" href="ross-extern_8h.html#aaa99d77ef4fabc6101a812df84e52be1">g_tw_mapping</a> == <a class="code" href="ross-types_8h.html#aaff8ab0fbfb817463eb76a185abc50cbadc101ebf31c49c2d4b80b7c6f59f22cb">LINEAR</a>) {</div>
<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;        e-&gt;<a class="code" href="structtw__event.html#ad82747d6237b1b03ef68c923bef423a0">src_lp</a> = <a class="code" href="ross-extern_8h.html#a43d0a4ccc4cb71f94675a4b64a7c60c0">g_tw_lp</a>[((<a class="code" href="ross_8h.html#a911515dff2fb79886a16ed44df5f9d20">tw_lpid</a>)tmp.<a class="code" href="structio__event__store.html#a3c07f6614dba72581441300dce1722da">src_lp</a>) - <a class="code" href="ross-extern_8h.html#ae8a20282effaa19f11bcaada18b5427d">g_tw_lp_offset</a>];</div>
<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;    } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (<a class="code" href="ross-extern_8h.html#aaa99d77ef4fabc6101a812df84e52be1">g_tw_mapping</a> == <a class="code" href="ross-types_8h.html#aaff8ab0fbfb817463eb76a185abc50cba945d6010d321d9fe75cbba7b6f37f3b5">CUSTOM</a>) {</div>
<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;        e-&gt;<a class="code" href="structtw__event.html#ad82747d6237b1b03ef68c923bef423a0">src_lp</a> = <a class="code" href="ross-extern_8h.html#a8b68252dffbb6e0a431b1967975fdb58">g_tw_custom_lp_global_to_local_map</a>((<a class="code" href="ross_8h.html#a911515dff2fb79886a16ed44df5f9d20">tw_lpid</a>)tmp.<a class="code" href="structio__event__store.html#a3c07f6614dba72581441300dce1722da">src_lp</a>);</div>
<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;    } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;        <a class="code" href="ross-extern_8h.html#a49ed2388aaae26e43280b7909c834aaa">tw_error</a>(<a class="code" href="ross-extern_8h.html#afffdf140f2c492f61546ad783833f127">TW_LOC</a>, <span class="stringliteral">&quot;RIO ERROR: Unsupported mapping&quot;</span>);</div>
<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;    }</div>
<div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;    e-&gt;<a class="code" href="structtw__event.html#a4e32bfdbde0d1cae06b5b3fb90adbffa">recv_ts</a> = tmp.<a class="code" href="structio__event__store.html#ad7e7d60ee99c255712323a48ffc581b2">recv_ts</a>;</div>
<div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;    <span class="comment">// printf(&quot;Loading event going to %lu at %f\n&quot;, tmp.dest_lp, tmp.recv_ts);</span></div>
<div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;    <span class="keywordflow">return</span> <span class="keyword">sizeof</span>(<a class="code" href="structio__event__store.html">io_event_store</a>);</div>
<div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;}</div>
<div class="ttc" id="ross-extern_8h_html_afffdf140f2c492f61546ad783833f127"><div class="ttname"><a href="ross-extern_8h.html#afffdf140f2c492f61546ad783833f127">TW_LOC</a></div><div class="ttdeci">#define TW_LOC</div><div class="ttdef"><b>Definition:</b> <a href="ross-extern_8h_source.html#l00164">ross-extern.h:164</a></div></div>
<div class="ttc" id="structio__event__store_html"><div class="ttname"><a href="structio__event__store.html">io_event_store</a></div><div class="ttdef"><b>Definition:</b> <a href="io_8h_source.html#l00076">io.h:76</a></div></div>
<div class="ttc" id="structtw__event_html_afbd71fb6565dd9a4de0ad8e77e748c8a"><div class="ttname"><a href="structtw__event.html#afbd71fb6565dd9a4de0ad8e77e748c8a">tw_event::dest_lp</a></div><div class="ttdeci">tw_lp * dest_lp</div><div class="ttdoc">Destination LP ID. </div><div class="ttdef"><b>Definition:</b> <a href="ross-types_8h_source.html#l00280">ross-types.h:280</a></div></div>
<div class="ttc" id="ross-extern_8h_html_a43d0a4ccc4cb71f94675a4b64a7c60c0"><div class="ttname"><a href="ross-extern_8h.html#a43d0a4ccc4cb71f94675a4b64a7c60c0">g_tw_lp</a></div><div class="ttdeci">tw_lp ** g_tw_lp</div><div class="ttdef"><b>Definition:</b> <a href="ross-global_8c_source.html#l00026">ross-global.c:26</a></div></div>
<div class="ttc" id="ross-extern_8h_html_aedd6d883bb5b01f0d5c1121f48b0477e"><div class="ttname"><a href="ross-extern_8h.html#aedd6d883bb5b01f0d5c1121f48b0477e">g_tw_ts_end</a></div><div class="ttdeci">double g_tw_ts_end</div><div class="ttdef"><b>Definition:</b> <a href="ross-global_8c_source.html#l00068">ross-global.c:68</a></div></div>
<div class="ttc" id="ross-types_8h_html_aaff8ab0fbfb817463eb76a185abc50cba945d6010d321d9fe75cbba7b6f37f3b5"><div class="ttname"><a href="ross-types_8h.html#aaff8ab0fbfb817463eb76a185abc50cba945d6010d321d9fe75cbba7b6f37f3b5">CUSTOM</a></div><div class="ttdef"><b>Definition:</b> <a href="ross-types_8h_source.html#l00040">ross-types.h:40</a></div></div>
<div class="ttc" id="structtw__lp_html_ab625bb15608759dde614a877a992672b"><div class="ttname"><a href="structtw__lp.html#ab625bb15608759dde614a877a992672b">tw_lp::critical_path</a></div><div class="ttdeci">unsigned int critical_path</div><div class="ttdoc">Critical path value for this LP. </div><div class="ttdef"><b>Definition:</b> <a href="ross-types_8h_source.html#l00319">ross-types.h:319</a></div></div>
<div class="ttc" id="ross-extern_8h_html_a49ed2388aaae26e43280b7909c834aaa"><div class="ttname"><a href="ross-extern_8h.html#a49ed2388aaae26e43280b7909c834aaa">tw_error</a></div><div class="ttdeci">void tw_error(const char *file, int line, const char *fmt,...) NORETURN</div><div class="ttdef"><b>Definition:</b> <a href="tw-util_8c_source.html#l00074">tw-util.c:74</a></div></div>
<div class="ttc" id="ross-extern_8h_html_ae8a20282effaa19f11bcaada18b5427d"><div class="ttname"><a href="ross-extern_8h.html#ae8a20282effaa19f11bcaada18b5427d">g_tw_lp_offset</a></div><div class="ttdeci">tw_lpid g_tw_lp_offset</div><div class="ttdef"><b>Definition:</b> <a href="ross-global_8c_source.html#l00024">ross-global.c:24</a></div></div>
<div class="ttc" id="io-serialize_8c_html_af5bea0aaf250d135278dbe8910fbfdb0"><div class="ttname"><a href="io-serialize_8c.html#af5bea0aaf250d135278dbe8910fbfdb0">io_event_serialize</a></div><div class="ttdeci">size_t io_event_serialize(tw_event *e, void *buffer)</div><div class="ttdef"><b>Definition:</b> <a href="io-serialize_8c_source.html#l00052">io-serialize.c:52</a></div></div>
<div class="ttc" id="structtw__event_html_a4e32bfdbde0d1cae06b5b3fb90adbffa"><div class="ttname"><a href="structtw__event.html#a4e32bfdbde0d1cae06b5b3fb90adbffa">tw_event::recv_ts</a></div><div class="ttdeci">tw_stime recv_ts</div><div class="ttdoc">Actual time to be received. </div><div class="ttdef"><b>Definition:</b> <a href="ross-types_8h_source.html#l00282">ross-types.h:282</a></div></div>
<div class="ttc" id="ross-types_8h_html_aaff8ab0fbfb817463eb76a185abc50cbadc101ebf31c49c2d4b80b7c6f59f22cb"><div class="ttname"><a href="ross-types_8h.html#aaff8ab0fbfb817463eb76a185abc50cbadc101ebf31c49c2d4b80b7c6f59f22cb">LINEAR</a></div><div class="ttdef"><b>Definition:</b> <a href="ross-types_8h_source.html#l00038">ross-types.h:38</a></div></div>
<div class="ttc" id="structtw__rng__stream_html_ae93b3e29cd7017deb81070094655b760"><div class="ttname"><a href="structtw__rng__stream.html#ae93b3e29cd7017deb81070094655b760">tw_rng_stream::tw_normal_u2</a></div><div class="ttdeci">double tw_normal_u2</div><div class="ttdef"><b>Definition:</b> <a href="rand-clcg4_8h_source.html#l00043">rand-clcg4.h:43</a></div></div>
<div class="ttc" id="structio__event__store_html_a47b2d062a53fd5fd82c289d618f483da"><div class="ttname"><a href="structio__event__store.html#a47b2d062a53fd5fd82c289d618f483da">io_event_store::cv</a></div><div class="ttdeci">tw_bf cv</div><div class="ttdef"><b>Definition:</b> <a href="io_8h_source.html#l00077">io.h:77</a></div></div>
<div class="ttc" id="structio__lp__store_html_a9c0895bc7c4d7cf19ebb636959fe8763"><div class="ttname"><a href="structio__lp__store.html#a9c0895bc7c4d7cf19ebb636959fe8763">io_lp_store::tw_normal_u1</a></div><div class="ttdeci">double tw_normal_u1</div><div class="ttdef"><b>Definition:</b> <a href="io_8h_source.html#l00069">io.h:69</a></div></div>
<div class="ttc" id="structtw__event_html_ab29a363ffc4af436e28ea2e9c02d7856"><div class="ttname"><a href="structtw__event.html#ab29a363ffc4af436e28ea2e9c02d7856">tw_event::cv</a></div><div class="ttdeci">tw_bf cv</div><div class="ttdoc">Used by app during reverse computation. </div><div class="ttdef"><b>Definition:</b> <a href="ross-types_8h_source.html#l00274">ross-types.h:274</a></div></div>
<div class="ttc" id="io-serialize_8c_html_ad0792b7799ac27da02e522be00b25a62"><div class="ttname"><a href="io-serialize_8c.html#ad0792b7799ac27da02e522be00b25a62">io_event_deserialize</a></div><div class="ttdeci">size_t io_event_deserialize(tw_event *e, void *buffer)</div><div class="ttdef"><b>Definition:</b> <a href="io-serialize_8c_source.html#l00068">io-serialize.c:68</a></div></div>
<div class="ttc" id="structio__lp__store_html_adf8f997fef6e14cb521c759e48273b4c"><div class="ttname"><a href="structio__lp__store.html#adf8f997fef6e14cb521c759e48273b4c">io_lp_store::rng</a></div><div class="ttdeci">int32_t rng[12]</div><div class="ttdef"><b>Definition:</b> <a href="io_8h_source.html#l00067">io.h:67</a></div></div>
<div class="ttc" id="ross_8h_html_a911515dff2fb79886a16ed44df5f9d20"><div class="ttname"><a href="ross_8h.html#a911515dff2fb79886a16ed44df5f9d20">tw_lpid</a></div><div class="ttdeci">uint64_t tw_lpid</div><div class="ttdef"><b>Definition:</b> <a href="ross_8h_source.html#l00160">ross.h:160</a></div></div>
<div class="ttc" id="structtw__rng__stream_html_a5dca142f13f2c619e95177afc96cfe11"><div class="ttname"><a href="structtw__rng__stream.html#a5dca142f13f2c619e95177afc96cfe11">tw_rng_stream::tw_normal_u1</a></div><div class="ttdeci">double tw_normal_u1</div><div class="ttdef"><b>Definition:</b> <a href="rand-clcg4_8h_source.html#l00042">rand-clcg4.h:42</a></div></div>
<div class="ttc" id="structtw__event_html"><div class="ttname"><a href="structtw__event.html">tw_event</a></div><div class="ttdoc">Event Stucture. </div><div class="ttdef"><b>Definition:</b> <a href="ross-types_8h_source.html#l00250">ross-types.h:250</a></div></div>
<div class="ttc" id="ross-extern_8h_html_a8b68252dffbb6e0a431b1967975fdb58"><div class="ttname"><a href="ross-extern_8h.html#a8b68252dffbb6e0a431b1967975fdb58">g_tw_custom_lp_global_to_local_map</a></div><div class="ttdeci">map_local_f g_tw_custom_lp_global_to_local_map</div><div class="ttdef"><b>Definition:</b> <a href="ross-global_8c_source.html#l00019">ross-global.c:19</a></div></div>
<div class="ttc" id="structtw__lp_html_a3e75d9bf7796c16870ad686564ee4c20"><div class="ttname"><a href="structtw__lp.html#a3e75d9bf7796c16870ad686564ee4c20">tw_lp::gid</a></div><div class="ttdeci">tw_lpid gid</div><div class="ttdoc">global LP id </div><div class="ttdef"><b>Definition:</b> <a href="ross-types_8h_source.html#l00306">ross-types.h:306</a></div></div>
<div class="ttc" id="structio__event__store_html_a3c07f6614dba72581441300dce1722da"><div class="ttname"><a href="structio__event__store.html#a3c07f6614dba72581441300dce1722da">io_event_store::src_lp</a></div><div class="ttdeci">tw_lpid src_lp</div><div class="ttdef"><b>Definition:</b> <a href="io_8h_source.html#l00080">io.h:80</a></div></div>
<div class="ttc" id="structtw__event_html_a5b1396b64aa4caf29bdc26f0930a250b"><div class="ttname"><a href="structtw__event.html#a5b1396b64aa4caf29bdc26f0930a250b">tw_event::critical_path</a></div><div class="ttdeci">unsigned int critical_path</div><div class="ttdoc">Critical path of this event. </div><div class="ttdef"><b>Definition:</b> <a href="ross-types_8h_source.html#l00278">ross-types.h:278</a></div></div>
<div class="ttc" id="io-serialize_8c_html_a27e42f409054b5666545c7e642767fdb"><div class="ttname"><a href="io-serialize_8c.html#a27e42f409054b5666545c7e642767fdb">io_lp_serialize</a></div><div class="ttdeci">size_t io_lp_serialize(tw_lp *lp, void *buffer)</div><div class="ttdef"><b>Definition:</b> <a href="io-serialize_8c_source.html#l00003">io-serialize.c:3</a></div></div>
<div class="ttc" id="structio__event__store_html_ad7e7d60ee99c255712323a48ffc581b2"><div class="ttname"><a href="structio__event__store.html#ad7e7d60ee99c255712323a48ffc581b2">io_event_store::recv_ts</a></div><div class="ttdeci">tw_stime recv_ts</div><div class="ttdef"><b>Definition:</b> <a href="io_8h_source.html#l00081">io.h:81</a></div></div>
<div class="ttc" id="ross-extern_8h_html_aaa99d77ef4fabc6101a812df84e52be1"><div class="ttname"><a href="ross-extern_8h.html#aaa99d77ef4fabc6101a812df84e52be1">g_tw_mapping</a></div><div class="ttdeci">tw_lp_map g_tw_mapping</div><div class="ttdef"><b>Definition:</b> <a href="ross-global_8c_source.html#l00021">ross-global.c:21</a></div></div>
<div class="ttc" id="structio__lp__store_html_af89f11d3fb0bb873266412a837715fed"><div class="ttname"><a href="structio__lp__store.html#af89f11d3fb0bb873266412a837715fed">io_lp_store::tw_normal_u2</a></div><div class="ttdeci">double tw_normal_u2</div><div class="ttdef"><b>Definition:</b> <a href="io_8h_source.html#l00070">io.h:70</a></div></div>
<div class="ttc" id="structtw__bf_html"><div class="ttname"><a href="structtw__bf.html">tw_bf</a></div><div class="ttdoc">Reverse Computation Bitfield. </div><div class="ttdef"><b>Definition:</b> <a href="ross-types_8h_source.html#l00178">ross-types.h:178</a></div></div>
<div class="ttc" id="structtw__rng__stream_html_aa90b1f32cf686365db9070d700ca0a38"><div class="ttname"><a href="structtw__rng__stream.html#aa90b1f32cf686365db9070d700ca0a38">tw_rng_stream::Ig</a></div><div class="ttdeci">int32_t Ig[4]</div><div class="ttdef"><b>Definition:</b> <a href="rand-clcg4_8h_source.html#l00035">rand-clcg4.h:35</a></div></div>
<div class="ttc" id="ross_8h_html"><div class="ttname"><a href="ross_8h.html">ross.h</a></div></div>
<div class="ttc" id="structtw__rng__stream_html_ae73176e60a69e3623e58f99ce561e821"><div class="ttname"><a href="structtw__rng__stream.html#ae73176e60a69e3623e58f99ce561e821">tw_rng_stream::tw_normal_flipflop</a></div><div class="ttdeci">int tw_normal_flipflop</div><div class="ttdef"><b>Definition:</b> <a href="rand-clcg4_8h_source.html#l00044">rand-clcg4.h:44</a></div></div>
<div class="ttc" id="structio__lp__store_html_a8c1686b67311778dd722afba7506a927"><div class="ttname"><a href="structio__lp__store.html#a8c1686b67311778dd722afba7506a927">io_lp_store::gid</a></div><div class="ttdeci">tw_lpid gid</div><div class="ttdef"><b>Definition:</b> <a href="io_8h_source.html#l00066">io.h:66</a></div></div>
<div class="ttc" id="ross-extern_8h_html_a99999f4e30648f5007c61723c95a2d0e"><div class="ttname"><a href="ross-extern_8h.html#a99999f4e30648f5007c61723c95a2d0e">g_tw_nRNG_per_lp</a></div><div class="ttdeci">unsigned int g_tw_nRNG_per_lp</div><div class="ttdef"><b>Definition:</b> <a href="ross-global_8c_source.html#l00029">ross-global.c:29</a></div></div>
<div class="ttc" id="structio__event__store_html_a999fc90b6427868d0a8a8c371b5d2ec4"><div class="ttname"><a href="structio__event__store.html#a999fc90b6427868d0a8a8c371b5d2ec4">io_event_store::critical_path</a></div><div class="ttdeci">unsigned int critical_path</div><div class="ttdef"><b>Definition:</b> <a href="io_8h_source.html#l00078">io.h:78</a></div></div>
<div class="ttc" id="structtw__rng__stream_html_a61563015a585f69852a131cb62a4a5b1"><div class="ttname"><a href="structtw__rng__stream.html#a61563015a585f69852a131cb62a4a5b1">tw_rng_stream::Lg</a></div><div class="ttdeci">int32_t Lg[4]</div><div class="ttdef"><b>Definition:</b> <a href="rand-clcg4_8h_source.html#l00036">rand-clcg4.h:36</a></div></div>
<div class="ttc" id="structtw__event_html_ad82747d6237b1b03ef68c923bef423a0"><div class="ttname"><a href="structtw__event.html#ad82747d6237b1b03ef68c923bef423a0">tw_event::src_lp</a></div><div class="ttdeci">tw_lp * src_lp</div><div class="ttdoc">Sending LP ID. </div><div class="ttdef"><b>Definition:</b> <a href="ross-types_8h_source.html#l00281">ross-types.h:281</a></div></div>
<div class="ttc" id="io-serialize_8c_html_a388e9a535bb45b57911f64cab9b65394"><div class="ttname"><a href="io-serialize_8c.html#a388e9a535bb45b57911f64cab9b65394">io_lp_deserialize</a></div><div class="ttdeci">size_t io_lp_deserialize(tw_lp *lp, void *buffer)</div><div class="ttdef"><b>Definition:</b> <a href="io-serialize_8c_source.html#l00027">io-serialize.c:27</a></div></div>
<div class="ttc" id="structio__lp__store_html"><div class="ttname"><a href="structio__lp__store.html">io_lp_store</a></div><div class="ttdef"><b>Definition:</b> <a href="io_8h_source.html#l00065">io.h:65</a></div></div>
<div class="ttc" id="structio__event__store_html_a89e4d26b434072c70a14e13d36fe5087"><div class="ttname"><a href="structio__event__store.html#a89e4d26b434072c70a14e13d36fe5087">io_event_store::dest_lp</a></div><div class="ttdeci">tw_lpid dest_lp</div><div class="ttdef"><b>Definition:</b> <a href="io_8h_source.html#l00079">io.h:79</a></div></div>
<div class="ttc" id="structtw__lp_html_af7e48c8a55f5fff35746ac044df1902f"><div class="ttname"><a href="structtw__lp.html#af7e48c8a55f5fff35746ac044df1902f">tw_lp::rng</a></div><div class="ttdeci">tw_rng_stream * rng</div><div class="ttdoc">RNG stream array for this LP. </div><div class="ttdef"><b>Definition:</b> <a href="ross-types_8h_source.html#l00317">ross-types.h:317</a></div></div>
<div class="ttc" id="structtw__rng__stream_html_ae50417100717d3cd46dacb1d7a01e6bf"><div class="ttname"><a href="structtw__rng__stream.html#ae50417100717d3cd46dacb1d7a01e6bf">tw_rng_stream::Cg</a></div><div class="ttdeci">int32_t Cg[4]</div><div class="ttdef"><b>Definition:</b> <a href="rand-clcg4_8h_source.html#l00037">rand-clcg4.h:37</a></div></div>
<div class="ttc" id="structio__lp__store_html_a25bf6226bc964d3369eff2d14dd3bff2"><div class="ttname"><a href="structio__lp__store.html#a25bf6226bc964d3369eff2d14dd3bff2">io_lp_store::critical_path</a></div><div class="ttdeci">unsigned int critical_path</div><div class="ttdef"><b>Definition:</b> <a href="io_8h_source.html#l00073">io.h:73</a></div></div>
<div class="ttc" id="structio__lp__store_html_a3014ce4e0a76a2cc18f6df88b1973217"><div class="ttname"><a href="structio__lp__store.html#a3014ce4e0a76a2cc18f6df88b1973217">io_lp_store::tw_normal_flipflop</a></div><div class="ttdeci">int tw_normal_flipflop</div><div class="ttdef"><b>Definition:</b> <a href="io_8h_source.html#l00071">io.h:71</a></div></div>
<div class="ttc" id="structtw__lp_html"><div class="ttname"><a href="structtw__lp.html">tw_lp</a></div><div class="ttdoc">LP State Structure. </div><div class="ttdef"><b>Definition:</b> <a href="ross-types_8h_source.html#l00304">ross-types.h:304</a></div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>
</body>
</html>
